package Java1227;

// (15)类与类之间的继承关系
// class具体类、abstract class抽象类
// 具体类 继承 具体类：可以
// 具体类 继承 抽象类：可以、项目中最常用的模式！抽象类：父类。具体类：子类。
// 抽象类 继承 具体类：可以
// 抽象类 继承 抽象类：可以

// 抽象类：父类。设计。
// 具体类：子类。实现。
// Java核心思想：先设计、再实现。

// (16)父类和子类之间的类型转换：向上转型、向下转型
// 子类型转换为父类型自动转换、父类型转换为子类型必须强制类型转换。


// 需求：计算器：加、减、乘、除

// 项目经理：设计
public abstract class D {
    abstract int m1(int a, int b);
    abstract int m2(int a, int b);
    abstract int m3(int a, int b);
    abstract int m4(int a, int b);
}

// 程序员：实现
class E extends D {

    public static void main(String[] args) {
        E e = new E();
        D d = e;
        E e2 = (E)d;
    }

    @Override
    int m1(int a, int b) {
        return 0;
    }

    @Override
    int m2(int a, int b) {
        return 0;
    }

    @Override
    int m3(int a, int b) {
        return 0;
    }

    @Override
    int m4(int a, int b) {
        return 0;
    }
}
